- Přehledy IS
- APS (20)
- BPM - procesní řízení (22)
- Cloud computing (IaaS) (10)
- Cloud computing (SaaS) (33)
- CRM (51)
- DMS/ECM - správa dokumentů (20)
- EAM (17)
- Ekonomické systémy (68)
- ERP (77)
- HRM (27)
- ITSM (6)
- MES (32)
- Řízení výroby (36)
- WMS (29)
- Dodavatelé IT slueb a řeení
- Datová centra (25)
- Dodavatelé CAD/CAM/PLM/BIM... (39)
- Dodavatelé CRM (33)
- Dodavatelé DW-BI (50)
- Dodavatelé ERP (71)
- Informační bezpečnost (50)
- IT řeení pro logistiku (45)
- IT řeení pro stavebnictví (26)
- Řeení pro veřejný a státní sektor (27)
ERP systémy
CRM systémy
Plánování a řízení výroby
AI a Business Intelligence
DMS/ECM - Správa dokumentů
HRM/HCM - Řízení lidských zdrojů
EAM/CMMS - Správa majetku a údrby
Účetní a ekonomické systémy
ITSM (ITIL) - Řízení IT
Cloud a virtualizace IT
IT Security
Logistika, řízení skladů, WMS
IT právo
GIS - geografické informační systémy
Projektové řízení
Trendy ICT
E-commerce B2B/B2C
CAD/CAM/CAE/PLM/3D tisk![]() | |
| Přihlaste se k odběru newsletteru SystemNEWS, který kadý týden přináí výběr článků z oblasti podnikové informatiky | |
![]() | |
Windows Server 2008 II
2. díl: Per aspera ad astra aneb Windows Web Server 2008 a IIS 7.0
Ji tradičně přináí nová verze serverového operačního systému Windows i novou verzi webového aplikačního serveru – Windows Web Server 2008 s Internet Information Services (IIS), v tomto případě se jedná o IIS verze 7.0. Ta je samozřejmě také součástí vech vyích edic Windows Serveru 2008. Hlavní dvě novinky v nové verzi IIS jsou modulární architektura a nový konfigurační model. Z nich potom vycházejí dalí nové monosti a vlastnosti, jako například dálková správa, snazí roziřitelnost, nebo lepí podpora pro konfiguraci webových farem.

Nová modulární koncepce
Historicky měl vdy webový server v IIS monolitickou architekturu. Vekerá základní funkčnost byla napsána v jeho jádru. V jistých mezích ji sice bylo mono zapínat a vypínat či konfigurovat, ale nebylo mono některé části z webového serveru zcela odstranit nebo je nahradit jinými. Jedinou cestou k rozíření funkčnosti IIS bylo psaní ISAPI filtrů a ISAPI extensions. Co jest cesta dosti krkolomná a nevděčná, a tudí jen zřídkavě vyuívaná.
V případě IIS 7.0 je architektura přesně opačná: server sám o sobě neumí vůbec nic, dokonce ani posílat statické soubory. Je to jenom prázdná schránka, do které lze pomocí jednotlivých funkčních modulů přidat podporu pro různé protokoly (HTTP, HTTPS, FTP, FTPS, MSMQ, named pipes, …) a jejich funkcionalitu (posílání statických souborů, autentizace, autorizace, cacheování, podpora skriptování ASP, ASP.NET, PHP, CGI, logování, HTTP komprese, …).
V důsledku tato architektura znamená, e funkcionalitu, kterou nepotřebujete, můete ze serveru úplně odstranit. Knihovny, které ji obsahují, se nebudou vůbec nahrávat do paměti a nemusejí být ani fyzicky přítomny na disku. To je výhodné z hlediska výkonu (IIS zabírá méně paměti), a zejména bezpečnosti (na server nelze zaútočit v případě, e se objeví chyba v nějaké komponentě, kterou nevyuíváte).

Snazí roziřitelnost
Shora uvedená modulární architektura s sebou nese té snazí roziřitelnost, nebo kterýkoliv z vestavěných modulů je snadné konfiguračně odstranit a nahradit vlastním. Součástí standardní instalace jsou pouze základní moduly a na CD s operačním systémem řadu funkcionality nenajdete. Roziřující moduly dle vlastní potřeby si můete nicméně zdarma stáhnout na www.iis.net.
Můete si je samozřejmě té psát sami, a to jak v unmanaged kódu (třeba v C++), tak v managed jazycích .NET Frameworku. Dá se předpokládat, e větina roziřujících modulů bude psána v .NET Frameworku, nebo se jedná o mnohem snazí úkol. Takové roziřující moduly se píí stejným způsobem jako HTTP moduly a handlery, které jsou ji od samého počátku součástí technologie ASP.NET, pouze jejich monosti jsou výrazně rozířeny. Stačí v některém z managed jazyků implementovat interface IHttpModule, respektive IHttpHandler, a konfiguračně zapojit vzniklou třídu do zpracování.

Pozice .NET Frameworku se oproti předchozím verzím změnila. Ve starích verzích byla knihovna aspnet_isapi.dll jenom jedním z mnoha ISAPI rozíření a .NET programátoři tak byli značně omezeni v rozletu. Nová verze IIS nabízí tzv. integrated pipeline. Uivatelské moduly a handlery se do zpracování vech poadavků mohou zapojit v podstatě v libovolném okamiku. Postavení HTTP handlerů a modulů je tak srovnatelné s postavením ISAPI filtrů a extensions v předchozích verzích.
Z důvodu zpětné kompatibility samozřejmě zůstala zachována té monost provozovat aplikaci v „klasickém“ reimu, který je stejný jako v předchozích verzích ASP.NET.
Nový konfigurační model
Distribuovaná architektura se týká té konfiguračního modelu. Nově je konfigurace zaloena na XML souborech, podobně jako v případě aplikací v .NET Frameworku. Seznam virtuálních webových serverů a jejich výchozí nastavení jsou uloena v souboru applicationHost.config (obdoba machine.config z .NET Frameworku) a nastavení specifická pro daný webový server jsou uloena v souboru web.config v rootu webu. Samozřejmě lze přesně určit, která nastavení můe měnit pouze administrátor a která mohou měnit uivatelé webu sami, prostřednictvím vlastního konfiguračního souboru.
V rámci jednoho webového serveru tak lze v jednom souboru web.config uchovávat nastavení webového serveru, .NET Frameworku i aplikace samé. Tento přístup výrazně zjednoduuje nasazení aplikace. Nastavení, která bylo nutné činit v předchozích verzích na několika místech, jsou nyní součástí jediného souboru, který stačí zkopírovat.

Je zde patrná inspirace konkurenčním webovým serverem Apache a jeho konfiguračními soubory httpd.conf a .htaccess. IIS nicméně pro tyto soubory vyuívá XML a cacheování, take je distribuovaná konfigurace dostatečně rychlá, na rozdíl od Apache, kde jeho oficiální dokumentace doporučuje tuto vlastnost z výkonových důvodů raději nepouívat.
Vylepena je té podpora pro běh webových farem. Konfigurační soubor můe být uloen mimo webový server, ve společném síovém úloiti, take změna konfigurace se automaticky projeví na vech nodech a není nutné se nijak zvlá starat o synchronizaci konfigurace.
Lepí nástroje pro správu
V předelých verzích IIS bylo k dispozici pouze grafické rozhraní (Internet Service Manager), nebo skriptování přes ADSI. Prvně zmíněné je nevhodné pro správu větího mnoství webů a programování skriptů, to druhé lze doporučit pouze ortodoxním masochistům.
Pro vizuální administraci nabízí IIS 7.0 novou verzi Internet Service Manageru. V duchu ostatních nástrojů pro správu, které jsou součástí Windows Web Serveru 2008, nabízí výrazně přehlednějí rozhraní, ve kterém je větina i pokročilých nastavení k dispozici na jedno či dvě kliknutí. Nikoliv tedy v nepřehledné změti dialogových oken dle vzoru vlastnosti – pokročilé vlastnosti – jetě pokročilejí vlastnosti, jak tomu bylo dříve.

Pro příznivce příkazové řádky je zde k dispozici utilita appcmd.exe, která umoní nastavit vechny parametry, například v dávkových souborech. IIS lze také spravovat pomocí WMI (Windows Management Instrumentation) a jeho namespace rootwebAdministration. Pro .NET aplikace a managed kód jsou k dispozici strongly-typed třídy v namespace System.Web.Administration. Existuje také provider pro PowerShell a samozřejmě té vrstva pro zpětnou kompatibilitu se starím ADSI rozhraním, aby nevyla naprázdno obě těch, kdo dali vanc svoji dui při praní skriptů pro ni. Nově je k dispozici té webová sluba, která umoňuje připojit se IIS Managerem přes HTTP/HTTPS na dálku, pouhým zpřístupněním jednoho webového endpointu.
Nový FTP server
IIS 7.0 obsahuje té novou verzi FTP serveru. Tu je ale nutné stáhnout z webu www.iis.net, na instalačním CD Windows Serveru 2008 je k dispozici pouze stará verze, stejná jako v případě IIS 6.0. Hlavní novinky, mnohými netrpělivě očekávané, jsou podpora FTPS (ifrovaná varianta FTP), podpora Unicode v názvech souborů a lepí monost nastavení portů pro pasivní reim, co zjednoduuje konfiguraci firewallu. FTP7 podporuje té Membership a Role providery, známé z ASP.NET. Je tedy moné pro přihlaování FTP uivatelů pouívat nikoliv systémové účty, ale i účty uloené třeba v SQL databázi nebo XML souborech.
Závěrem
Vinou neblaze proslulé verze 4.0 má IIS v odborných kruzích velmi patnou pověst, co do stability, zabezpečení a výkonu. Ji předchozí verze 6.0, jako součást Windows Serveru 2003, přinesla tolik změn, e je tato pověst neoprávněná. Sluí se například poznamenat, e za celou dobu své existence nebyla v IIS 6.0 objevena jediná kritická bezpečnostní chyba.

IIS 7.0 odstraňuje poslední zásadní dluhy, které Microsoft vůči jeho uivatelům má, tedy konfiguraci, modularitu a roziřitelnost. Se znalostí historického vývoje a schopností jednotlivých verzí IIS tedy mohu za více ne případný označit podtitulek tohoto článku. Per aspera ad astra – utrpením ke hvězdám.
Autor působí jako hlavní softwarový architekt společnosti Altairis.



















